Digital-to-analog converters (DACs) convert digital input codes into analog output signals. DACs are widely used in a variety of applications, such as audio and video processing. One of the most common types of DACs is a string DAC. A string DAC includes a string of resistors, connected in series, between a voltage reference and ground. The resistor string acts as a potential divider, with different voltages being generated at each node along the string. These nodes are connected to an array of switches, which may be switched on and off to channel one of the voltages to an output. The switches are typically controlled by a decoder, which takes an input digital code, and determines which node to connect to the output, to generate a suitable analog voltage.
An important performance parameter of string DACs is accuracy, including linearity and non-linearity. Assuming all of the resistors are identical, and that other characteristics of the DAC are ideal, the relationship between the input code and the voltage output should be linear. However, owing to differences between the resistors values, voltage errors may appear at the nodes. In other words, for a particular input code, the voltage generated is slightly different to the ideal voltage.